From: Marco Trevisan (TreviƱo) Date: Wed, 4 Jul 2018 13:56:25 +0000 (+0200) Subject: messageList: stop syncing if closeButton has been destroyed X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~929^2^2~63 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=87da623d86323a0744b8723e1991f053586defaf;p=gnome-shell.git messageList: stop syncing if closeButton has been destroyed The _sync function for Message only updates the close button visibility, so we can safely stop doing that if the close button get get destroyed earlier (as it happens when clicking on it). https://bugzilla.gnome.org/show_bug.cgi?id=791233 --- diff --git a/js/ui/messageList.js b/js/ui/messageList.js index 3b3c2b6df..547135a1f 100644 --- a/js/ui/messageList.js +++ b/js/ui/messageList.js @@ -363,7 +363,8 @@ var Message = new Lang.Class({ this.setBody(body); this._closeButton.connect('clicked', this.close.bind(this)); - this.actor.connect('notify::hover', this._sync.bind(this)); + let actorHoverId = this.actor.connect('notify::hover', this._sync.bind(this)); + this._closeButton.connect('destroy', this.actor.disconnect.bind(this.actor, actorHoverId)); this.actor.connect('clicked', this._onClicked.bind(this)); this.actor.connect('destroy', this._onDestroy.bind(this)); this._sync();